package com.fastloan.mgt.product.basics.model.vo;

import com.fastloan.mgt.product.label.model.Label;
import com.fastloan.safe.mgt.sys.model.CmuSysFile;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author chenkai
 *         createTime 2017-11-2017/11/9 10:11
 */
public class ProductVO {
    /**
     * 产品id
     */
    @Id
    @Column(name = "PRODUCT_ID")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private String productId;

    /**
     * 机构id
     */
    private String orgId;

    /**
     * 产品编号
     */
    private String productCode;

    /**
     * 产品类型
     */
    private Integer productType;

    /**
     * 调查类型
     */
    private String surveyType;

    /**
     * 产品名称
     */
    private String productName;

    /**
     * 还款方式
     */
    private Integer repayment;

    /**
     * 额度上限
     */
    private BigDecimal spendingLimit;

    /**
     * 额度下限
     */
    private BigDecimal spendingFloor;

    /**
     * 期限上限
     */
    private Integer timeLimit;

    /**
     * 期限下限
     */
    private Integer timeFloor;

    /**
     *  月利率上限
     */
    private BigDecimal monthlyLimit;

    /**
     * 月利率下限
     */
    private BigDecimal monthlyFloor;

    /**
     * 准入年龄上限
     */
    private Integer accessLimit;

    /**
     * 准入年龄下限
     */
    private Integer accessFloor;

    /**
     * 模型类型
     */
    private Integer modelType;

    /**
     * 是否重复申请
     */
    private Integer repetitionApply;

    /**
     * 是否已被申请过
     */
    private Integer record;

    /**
     * 产品状态( 0 创建中,  1 启用, 2 禁用
     */
    private Integer status;

    /**
     * 产品介绍
     */
    private String introduction;

    /**
     * 产品简介
     */
    private String synopsis;

    /**
     * 适用人群
     */
    private String suitThrong;

    /**
     * 申请条件
     */
    private String requirement;

    /**
     * 协议名称
     */
    private String protocolName;

    /**
     * 协议值
     */
    private String protocolValue;

    /**
     * 贷款角色
     */
    private String lendingRole;
    /**
     * 是否进行预授信 0否, 1是
     */
    private Integer whetherCredit;


    /**
     * 产品准入项
     */
    private String conditions;

    private Integer randomPerson;

    private List<CmuSysFile> logos;


    private List<CmuSysFile> productFiles;

    private List<Label> labelList;

    /**
     * 资金方
     */
    private String fundingId;

    public Integer getWhetherCredit() {
        return whetherCredit;
    }

    public void setWhetherCredit(Integer whetherCredit) {
        this.whetherCredit = whetherCredit;
    }

    public String getFundingId() {
        return fundingId;
    }

    public void setFundingId(String fundingId) {
        this.fundingId = fundingId;
    }

    public List<Label> getLabelList() {
        return labelList;
    }

    public void setLabelList(List<Label> labelList) {
        this.labelList = labelList;
    }

    public String getLendingRole() {
        return lendingRole;
    }

    public void setLendingRole(String lendingRole) {
        this.lendingRole = lendingRole;
    }

    public String getConditions() {
        return conditions;
    }

    public void setConditions(String conditions) {
        this.conditions = conditions;
    }

    public Integer getRandomPerson() {
        return randomPerson;
    }

    public void setRandomPerson(Integer randomPerson) {
        this.randomPerson = randomPerson;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getOrgId() {
        return orgId;
    }

    public void setOrgId(String orgId) {
        this.orgId = orgId;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    public Integer getProductType() {
        return productType;
    }

    public void setProductType(Integer productType) {
        this.productType = productType;
    }

    public String getSurveyType() {
        return surveyType;
    }

    public void setSurveyType(String surveyType) {
        this.surveyType = surveyType;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Integer getRepayment() {
        return repayment;
    }

    public void setRepayment(Integer repayment) {
        this.repayment = repayment;
    }

    public BigDecimal getSpendingLimit() {
        return spendingLimit;
    }

    public void setSpendingLimit(BigDecimal spendingLimit) {
        this.spendingLimit = spendingLimit;
    }

    public BigDecimal getSpendingFloor() {
        return spendingFloor;
    }

    public void setSpendingFloor(BigDecimal spendingFloor) {
        this.spendingFloor = spendingFloor;
    }

    public Integer getTimeLimit() {
        return timeLimit;
    }

    public void setTimeLimit(Integer timeLimit) {
        this.timeLimit = timeLimit;
    }

    public Integer getTimeFloor() {
        return timeFloor;
    }

    public void setTimeFloor(Integer timeFloor) {
        this.timeFloor = timeFloor;
    }

    public BigDecimal getMonthlyLimit() {
        return monthlyLimit;
    }

    public void setMonthlyLimit(BigDecimal monthlyLimit) {
        this.monthlyLimit = monthlyLimit;
    }

    public BigDecimal getMonthlyFloor() {
        return monthlyFloor;
    }

    public void setMonthlyFloor(BigDecimal monthlyFloor) {
        this.monthlyFloor = monthlyFloor;
    }

    public Integer getAccessLimit() {
        return accessLimit;
    }

    public void setAccessLimit(Integer accessLimit) {
        this.accessLimit = accessLimit;
    }

    public Integer getAccessFloor() {
        return accessFloor;
    }

    public void setAccessFloor(Integer accessFloor) {
        this.accessFloor = accessFloor;
    }

    public Integer getModelType() {
        return modelType;
    }

    public void setModelType(Integer modelType) {
        this.modelType = modelType;
    }

    public Integer getRepetitionApply() {
        return repetitionApply;
    }

    public void setRepetitionApply(Integer repetitionApply) {
        this.repetitionApply = repetitionApply;
    }

    public Integer getRecord() {
        return record;
    }

    public void setRecord(Integer record) {
        this.record = record;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getIntroduction() {
        return introduction;
    }

    public void setIntroduction(String introduction) {
        this.introduction = introduction;
    }

    public String getSynopsis() {
        return synopsis;
    }

    public void setSynopsis(String synopsis) {
        this.synopsis = synopsis;
    }

    public String getSuitThrong() {
        return suitThrong;
    }

    public void setSuitThrong(String suitThrong) {
        this.suitThrong = suitThrong;
    }

    public String getRequirement() {
        return requirement;
    }

    public void setRequirement(String requirement) {
        this.requirement = requirement;
    }

    public String getProtocolName() {
        return protocolName;
    }

    public void setProtocolName(String protocolName) {
        this.protocolName = protocolName;
    }

    public String getProtocolValue() {
        return protocolValue;
    }

    public void setProtocolValue(String protocolValue) {
        this.protocolValue = protocolValue;
    }

    public List<CmuSysFile> getLogos() {
        return logos;
    }

    public void setLogos(List<CmuSysFile> logos) {
        this.logos = logos;
    }

    public List<CmuSysFile> getProductFiles() {
        return productFiles;
    }

    public void setProductFiles(List<CmuSysFile> productFiles) {
        this.productFiles = productFiles;
    }
}
